    /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.modelo;

import java.math.BigDecimal;
import java.util.Calendar;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Transient;

/**
 *
 * @author egberto
 */
@Entity
@Table(name="tbl_pessoas")
public class Pessoa {
    @Id    
    private Long id;
    
    /*
     *   length Limita a quantidade de caracteres de uma string
     *   nullable Determina se o campo pode possuir valores null ou não
     *   unique Determina se uma coluna pode ter valores repetidos ou não
     *   precision Determina a quantidade de dígitos de umnúmero decimal a serem armazenadas
     *   scale Determina a quantidade de casas decimais de um número decimal
     */
    @Column(length=30, nullable=false, unique=true)
    private String nome;
    
    /*
     * a altura das pessoas será representada por um número de três dígitos,
     * sendo dois deles referentes às casas decimais.
     */
    @Column(precision=3, scale=2)
    private BigDecimal altura;
    
    @Lob
    private byte[] avatar;
    
    @Temporal(TemporalType.DATE)
    private Calendar nascimento;
    
    // transient nao é persistido no banco
    @Transient
    private int idade;
    
    
}
